﻿@model PcaCaja.BOL.oGrupoMovimiento

@{
    var X = Html.X();
}

@(
 X.Window()
        .ID("winEditarGrupoMovimiento")
        .Title(string.Format("Editar grupo \"{0}\"", Model.nombre))
        .Resizable(false)
        .Icon(Icon.UserAdd)
        .Layout(LayoutType.Fit)
        .Width(450)
        .Constrain(true)
        .BodyPadding(5)
        .Items(
            X.FormPanel()
                .ID("formEditarGrupoMovimiento")
                .Layout(LayoutType.Form)
                .BodyPadding(5)
                .FieldDefaults(fieldDefaults => { fieldDefaults.LabelWidth = 100; })
                .Items(
                    X.HiddenFor(m => m.grupo_movimiento_id),
                    X.ComboBoxFor(m => m.tipo_movimiento_id)
                        .ForceSelection(true)
                        .QueryMode(DataLoadMode.Local)
                        .DisplayField("nombre")
                        .ValueField("tipo_movimiento_id")
                        .EmptyText("Seleccione...")
                        .Store(
                            X.StoreFor(typeof(PcaCaja.BOL.oTipoMovimiento))
                                .AutoLoad(true)
                                .Proxy(
                                    X.AjaxProxy()
                                        .Url(Url.Action("GetList", "TipoMovimiento"))
                                        .Reader(X.JsonReader().RootProperty("data"))
                                )
                                .Listeners(l =>
                                {
                                    l.Load.Handler = string.Format("if(successful){{ App.tipo_movimiento_id.setValue('{0}')}}", ViewData["tipoMovimientoId"]);
                                })
                        )
                        .Listeners(ls =>
                        {
                            ls.SpecialKey.Handler = @"if(e.getKey() == e.ENTER){
                                                e.stopEvent();
                                                if(item.isValid()){
                                                    App.codigo.focus();
                                                }
                                            }";
                        }),
                    X.TextFieldFor(m => m.codigo)
                        .MaxLength(20)
                        .Listeners(ls =>
                        {
                            ls.SpecialKey.Handler = @"if(e.getKey() == e.ENTER){
                                            e.stopEvent();
                                            if(item.isValid()){
                                                App.nombre.focus();
                                            }
                                        }";
                        }),
                    X.TextFieldFor(m => m.nombre)
                )
                .Buttons(
                    X.Button()
                        .Text("Actualizar")
                        .Icon(Icon.Disk)
                        .DirectEvents(de =>
                        {
                            de.Click.Url = Url.Action("Actualizar", "GrupoMovimiento");
                            de.Click.Method = HttpMethod.POST;
                            de.Click.Before = "PcaGlobal.fnValidarForm";
                            de.Click.Success = @"App.storeGruposMovimiento.reload();
                                                 App.winEditarGrupoMovimiento.close();";
                            de.Click.Failure = "PcaGlobal.showError(result.msg);";
                            de.Click.EventMask.ShowMask = true;
                            de.Click.EventMask.Msg = "Actualizando...";
                        })
                )
        )
)
